In the future, communications between pairs of devices are likely to increase. Examples of such communications can be found in the increased application of connectivity of household devices such as game consoles, televisions, and heating systems as well as in the recent addition of tablet computers and smart phones. Some of these devices are capable of sending and receiving data over a direct data connection between them for a variety of purposes, such as e.g. using a smart phone or a tablet computer to control a television or a heating system, wirelessly transferring images and motion pictures from a camera to a laptop or a personal computer (PC), etc. Presently such communications are typically implemented by connecting both of the devices to the same network, such as a wired or wireless home or office network. Since this is not always possible or desirable, for data exchange between two devices that are not in the same network, the devices have to utilize an online service for relaying the data, which may also be undesirable at times.
Often, devices that would be advantageous to engage in a direct communication with one another without being connected to a common local network and without using an online service are devices connected to a cellular telecommunications network. A technique has been developed, known as “proximity services” or “direct mode”, that enables a direct data connection between two cellular devices utilizing radio resources allocated for that purpose. Whereas conventional cellular devices utilize the network infrastructure of one or more telecommunications networks, the infrastructure comprising at least a base station to communicate with each other, a characteristic of direct mode communication between such devices is that they can establish direct wireless data connections with each other without the need for user data to traverse the network infrastructure.
It would be desirable to enable device-to-device (D2D) communication between two cellular devices which are not in the proximity of one another as is required by the direct mode communication described above and also not in the same local network. One factor that makes such communication difficult to achieve for cellular devices is that cellular devices might be subscribed to different mobile network operators and, therefore, be behind different firewalls. Even for devices that are in the same mobile operator network, security regulations might prevent that two devices communicate directly. A trivial solution to this problem would be to remove the firewalls and make every device addressable directly from both inside and outside the operator network. A problem that could then occur is that the operator, and, consequently, the user of the device, will not have control over the data that is allowed to reach the device. For example, a malicious website or hacker could then keep on sending data to certain devices, which could result in that the end users will be facing high bills for data usage or/and the network operator will not be able to charge for the unsolicited data, leading to a loss to the operator.
It would also be desirable that, in order for two software applications on two cellular devices to exchange data, the devices and the applications should be aware that a connection between the devices is available and that they should either expect data packets or can send data packets over this connection. Preferably, a technique that allows such communication would be seamless and easy to use for both application developers and end users of the devices.
What is needed in the art is a technique enabling an establishment of a connection between two cellular devices connected to the same or different telecommunications network(s) of a single mobile operator or telecommunication networks of different mobile network operators in a manner that can address at least some of the issues described above.